/** * <copyright> * </copyright> * * */ package ssl.resource.ssl.mopp; /** * A representation for a range in a document where a boolean attribute is * expected. */ public class SslExpectedBooleanTerminal extends ssl.resource.ssl.mopp.SslAbstractExpectedElement { private ssl.resource.ssl.grammar.SslBooleanTerminal booleanTerminal; public SslExpectedBooleanTerminal(ssl.resource.ssl.grammar.SslBooleanTerminal booleanTerminal) { super(booleanTerminal.getMetaclass()); this.booleanTerminal = booleanTerminal; } public ssl.resource.ssl.grammar.SslBooleanTerminal getBooleanTerminal() { return booleanTerminal; } private org.eclipse.emf.ecore.EStructuralFeature getFeature() { return booleanTerminal.getFeature(); } public String toString() { return "EFeature " + getFeature().getEContainingClass().getName() + "." + getFeature().getName(); } public boolean equals(Object o) { if (o instanceof SslExpectedBooleanTerminal) { return getFeature().equals(((SslExpectedBooleanTerminal) o).getFeature()); } return false; } public java.util.Set<String> getTokenNames() { // BooleanTerminals are associated with two or one token(s) java.util.Set<String> tokenNames = new java.util.LinkedHashSet<String>(2); String trueLiteral = booleanTerminal.getTrueLiteral(); if (!"".equals(trueLiteral)) { tokenNames.add("'" + trueLiteral + "'"); } String falseLiteral = booleanTerminal.getFalseLiteral(); if (!"".equals(falseLiteral)) { tokenNames.add("'" + falseLiteral + "'"); } return tokenNames; } }